/**
 * Description:
 * Class Name:MyProxyFactory
 * Date:2022/4/30 19:49
 *
 * @author LTisme
 * @version JAVA17
 */
package 疯狂Java讲义.第18章_类加载机制与反射._18_5_使用反射生成JDK动态代理._18_5_2_动态代理和AOP;

import java.lang.reflect.Proxy;

public class MyProxyFactory {
    // 为指定的target生成动态代理对象
    public static Object getProxy(Object target) throws Exception{
        MyInvocationHandler myInvocationHandler = new MyInvocationHandler();
        myInvocationHandler.setTarget(target);
        // 创建并返回一个动态代理
        return Proxy.newProxyInstance(target.getClass().getClassLoader(), target.getClass().getInterfaces(), myInvocationHandler);
    }
}
